home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 February / CHIP Şubat 1998.iso / drivers / SESK / somaria / INSTALL.DAT < prev    next >
Text File  |  1994-05-13  |  48KB  |  1,481 lines

  1.  /*----------------------------------------------------------------------
  2.  *      FILE:
  3.  *              install.dat
  4.  *
  5.  *      DESCRIPTION:
  6.  *
  7.  *      Install.dat is an installation script for copying Aria DOS  
  8.  *      utilities, Aria Windows utilities, and the Aria Windows 
  9.  *      driver to hard disk.  It also allows the user to run a sound card test
  10.  *      program and set up the Windows driver.  If Windows is not loaded, 
  11.  *      the Aria Windows driver cannot be set; and a warning box is 
  12.  *      displayed.
  13.  *
  14.  *-------------------------------------------------------------------
  15.  */
  16.  
  17.  
  18. @DefineProject
  19.     @Name           = "Aria Sound Card"
  20.     @Version        = "PS1-1.1"        
  21.     @OutDrive       = C
  22.     @Subdir         = "\\ARIA"
  23.     @Group          = "Z"
  24.     @Immediate      = 1
  25. @EndProject
  26.  
  27. @DefineVars
  28. //
  29. // set all configuration variables
  30. //
  31.     @Qstring @ArPort = "290"
  32.     @Qstring @ArIRQ = "10"
  33.     @Qstring @ArDMA = "5"
  34.     @Qstring @SBPort = "220"
  35.     @Qstring @SBIRQ = "7" 
  36.     @Qstring @SBDMA = "1"
  37.     @Qstring @MiPort = "330"
  38.     @Qstring @MiIRQ = "9"
  39.     @QString @SiPort = "NONE"
  40.     @QString @SiIRQ = "NONE"
  41.     @Qstring @AdPort = "388"
  42.     @Qstring @JoyPort = "200"  // Default setting is disabled
  43.     @QString @JoyPort2 = "NORMAL"
  44.     @QString @JoySpeed = "NORMAL"
  45.     @Qstring @AriaConf = "T1"               
  46.     @QString @OldSiPort = "310"
  47.  
  48.  
  49. //        
  50. //      Variables to store the sets of available settings returned by QAINFO
  51. //
  52.     @QString @ArIOSet = ""
  53.     @QString @ArIRQSet = ""
  54.     @QString @ArDMASet = ""
  55.     @QString @SBIOSet = ""
  56.     @QString @SBIRQSet = ""
  57.     @QString @SBDMASet = ""
  58.     @QString @MiIOSet = ""
  59.     @QString @MiIRQSet = ""
  60.     @QString @SiIOSet = ""  
  61.     @QString @AdIOSet = ""
  62.     @QString @JoyIOSet  = ""
  63.     @QString @JoySpeedSet = "NORMAL,FAST"
  64.  
  65.     @Integer @Parameter = 99
  66.     @QString @SetStr  = "XXX"
  67.     @QString @Setting1 = ""
  68.     @QString @Setting2 = ""
  69.     @QString @Setting3 = ""
  70.     @QString @Setting4 = ""
  71.     @QString @Setting5 = ""
  72. //
  73. // decimal values of port adresses
  74. //
  75.     @Integer @ArPortHex
  76.     @Integer @SBPortHex
  77.     @Integer @MiPortHex
  78. //
  79. // variables for Windows driver set up
  80. //
  81.     @QString @dspport = " "
  82.     @QString @Rsize = "R1"
  83.     @QString @WinDir = "C:\\WINDOWS"
  84.     @Integer @Flag1 = 0
  85.     @Integer @Flag2 = 0
  86. //
  87. // variables to hold paramater values returned by diagnostic utility
  88. //
  89.     @QString @ParamSet = ""
  90.     @QString @TempStr = ""
  91.     @Integer @ModifyMode = 0
  92.     @QString @AriaDir = @StrHead(@ScriptFile,@Strlen(@Scriptfile) - 12)
  93. @EndVars
  94. @FlushOptions()
  95.  
  96. @If(@Spawn("BIN\\winchk.exe") == 1)   // confirm not running from within Windows DOS shell
  97.    @Display
  98.              RUN CONFIGURATION PROGRAM FROM DOS
  99.  
  100.    
  101.    
  102.    
  103.    
  104.    You should run the Aria configuration program from DOS, not from 
  105.    within a Windows DOS shell. Exit Windows, change to the Aria home
  106.    directory on your hard drive, and type "config".
  107.  
  108.    @PauseX
  109.    @EndDisplay
  110.    @Exit
  111. @EndIf
  112.  
  113. @If(!@Exists("@StartupDrive:@StartupDir\\BIN\\qainfo.exe"))
  114.    @AriaDir = @StrHead(@ScriptFile,@StrFind(@ScriptFile,"INSTALL.DAT") - 1 )
  115.    @ChangeDir(@AriaDir)
  116. @Else
  117.    @AriaDir = "@StartupDrive:@StartupDir"
  118. @Endif
  119.  
  120. @If (@Exists("aria.cfg"))
  121.   @OldSiPort = @ReadLine("aria.cfg",8,"=")  
  122. @EndIf
  123.  
  124. @FlushGroups()
  125. @SetGroup(C)
  126.  
  127. @If (@Spawn("BIN\\findaria.com") > 0)        // disable board to prevent a conflicting configuration from hanging INSTALL
  128.   @Spawn("BIN\\boardcfg /Se 0 disable.cfg") 
  129. @EndIf
  130.  
  131. MainMenu:
  132. CUSTOM_MENU:
  133. @If (C [= @Group)  
  134.    @If(!@Exists("cfg.001")) @SetGroup(U) @SetGroup(F) @EndIf  // first-time custom installation; prompt to set up Windows driver
  135.    @GetOption                                                 // after modifying AUTOEXEC.BAT
  136.    @ClearOption(2)
  137.    @ClearOption(3)
  138.    @ClearOption(5)
  139.    @LocalWindow(14,37)
  140.    @Cls                     
  141.             ARIA SOUND CARD CONFIGURATION
  142.  
  143.    
  144.    
  145.    Select "Change hardware settings" to modify your current sound card setup.
  146.    
  147.    Select "Set up Aria Windows driver" if you have removed the Aria driver
  148.    from your Microsoft Windows configuration. 
  149.  
  150.    
  151.    @Option 2 = "Change hardware settings"
  152.    @Option 3 = "Set up Aria Windows driver"
  153.    @Option 5 = "Exit to DOS"
  154.  
  155.    @EndOption
  156.    @If (5 [= @Option)
  157.      @If(!@Exists("aria.cfg"))
  158.        
  159.  
  160.        @Display 
  161.             RE-BOOT YOUR COMPUTER 
  162.  
  163.  
  164.      
  165.      The configuration program automatically disables your sound card after 
  166.      you type "config".  If you are exiting this program without setting up 
  167.      your hardware, you must re-boot your PC to enable the sound card.  You 
  168.      should also re-boot if you change your sound card's hardware settings 
  169.      (I/O, IRQ, or DMA).
  170.  
  171.      To re-boot your computer, turn the power off and on.
  172.           @PauseX
  173.        @EndDisplay
  174.      @Else
  175.     @Spawn("BIN\\boardcfg /Se 0 aria.cfg")  
  176.      @EndIf
  177.      @Exit
  178.    @ElseIf (2 [= @Option)
  179.        @If(@Exists("cfg.001"))
  180.          @ModifyMode = 1
  181.        @EndIf
  182.        @GoTo HARDWARE_SETUP 
  183.    @ElseIf(3 [= @Option)
  184.        @SetGroup(W)
  185.        @Spawn("BIN\\boardcfg /Se 0 aria.cfg")
  186.        @GoTo SetupWin
  187.    @EndIf
  188. @EndIf // END CUSTOM_MENU
  189.  
  190.  
  191. QAINFO:
  192. // ***** Prompt to run QAINFO.EXE, the PC diagnostic utility that scans 
  193. // ***** the computer for available resources.  Giving the user the user the
  194. // ***** option not to run QAINFO allows for manual setup in the event QAINFO 
  195. // ***** does not operate properly on a particular computer.
  196.  
  197. HARDWARE_SETUP:   
  198.    
  199. QuickQAINFO: 
  200.    @FlushOptions()   
  201. @If (Q [= @Group)
  202.    @ModifyMode = 0
  203.    @SetOption(1)
  204.    @GoTO QUICK_DIAGNOSTIC
  205. @EndIf
  206.  
  207.    @GetOption
  208.    @FlushKeyboard
  209.    @ClearOption(1)
  210.    @ClearOption(2)
  211.    @ClearOption(3)
  212.    @LocalWindow(18,37)
  213.    @Cls
  214.                  PC DIAGNOSTIC UTILITY
  215.  
  216.      Your sound board communicates with your computer through a variety of 
  217.      system resources: input/output (I/O) ports, interrupts (IRQs), and 
  218.      Direct Memory Access (DMA) channels.  To operate properly, your sound 
  219.      board must use resources that are not allocated to other devices.
  220.    
  221.      This program includes a PC diagnostic utility that scans your computer 
  222.      for available resources.  The diagnostic utility identifies those board 
  223.      settings that should not conflict with other devices in your system.
  224.  
  225.      If you have had difficulty running the diagnostic utility in the past,
  226.      do not run the utility.  
  227.  
  228.    @Option 1 = "Run the diagnostic utility"
  229.    @Option 2 = "Do not run the diagnostic utility"
  230.    @Option 3 = "Return to previous menu"
  231.  
  232. @EndOption
  233.  
  234. QUICK_DIAGNOSTIC:
  235. @If (3 [= @Option)
  236.    @If (C [= @Group)
  237.       @GoTo CUSTOM_MENU
  238.    @Else
  239.       @GoTo MainMenu
  240.    @EndIf
  241. @ElseIf (1 [= @Option)      // ***** confirm that board is disabled
  242.                // ***** QAINFO PROMPT OPTIONS
  243.    
  244.   @SetOption(666) 
  245.   @If (@Spawn("BIN\\findaria.com") > 0)   
  246.      @Spawn("BIN\\boardcfg /Se 0 disable.cfg") //disable card     
  247.   @EndIf
  248.    @Display 
  249.    @LocalWindow(17,38)
  250.    @Cls
  251.                  EXECUTING DIAGNOSTIC
  252.    
  253.      Your sound board communicates with your computer in a variety of ways:
  254.      input/output (I/O) ports, interrupts (IRQs), and Direct Memory Access 
  255.      (DMA) channels.  To operate properly, your sound board must use computer
  256.      resources that are not used by other devices.  This program includes a 
  257.      PC diagnostic utility that is scanning your computer for available 
  258.      resources.  Scanning should take less than 15 seconds.
  259.                         
  260.      If you experience any problems while running the diagnostic utility,
  261.      type "config" from the ARIA home directory on your hard drive.  Select
  262.      "Change hardware settings", choose "Do not run the diagnostic utility",
  263.      and complete the hardware setup.  Remember to set up the Aria Windows
  264.      driver with any changed settings.  
  265.    @If (@spawn("BIN\\qainfo -t204 -t205 -fout") == -1) QAINFO not found or needs more memory to run!! @EndIf
  266.    @If (@Spawn("BIN\\readlog 4") == -1) READLOG not found!! @EndIf @Pause  
  267. @EndDisplay
  268.   
  269.   
  270. // ***** load available parameter info from QAINFO logfile
  271.  
  272.    @ArIOSet  =  @ReadLine("logfile.txt",0,"=")
  273.    @ArIRQSet =  @ReadLine("logfile.txt",1,"=")
  274.    @ArDMASet =  @ReadLine("logfile.txt",2,"=")
  275.    @SBIOSet  =  @ReadLine("logfile.txt",3,"=")
  276.    @SBIRQSet =  @ReadLine("logfile.txt",4,"=")
  277.    @SBDMASet =  @ReadLine("logfile.txt",5,"=")
  278.    @MiIOSet  =  @ReadLine("logfile.txt",6,"=")
  279.    @MiIRQSet =  @ReadLine("logfile.txt",7,"=")
  280.    @SiIOSet  =  @ReadLine("logfile.txt",8,"=")  
  281.    @AdIOSet  =  @ReadLine("logfile.txt",9,"=") 
  282.    @JoyIOSet =  @ReadLine("logfile.txt",10,"=") 
  283.  
  284.    @Delete("OUT")
  285.    @Delete("logfile.txt")
  286.  
  287. @ElseIf (2 [= @Option)
  288.   // ***** user chose not to run QAINFO; assign all possible parameters to
  289.   // ***** set variables
  290.  
  291.    
  292.    @ArIOSet  =  "290,280,2A0,2B0,NONE"
  293.    @ArIRQSet =  "10,11,12,NONE"
  294.    @ArDMASet =  "5,6,NONE"
  295.    @SBIOSet  =  "220,240,NONE"
  296.    @SBIRQSet =  "7,5,9,NONE"
  297.    @SBDMASet =  "1,0,NONE"
  298.    @MiIOSet  =  "330,320,NONE"
  299.    @MiIRQSet =  "9,5,7,NONE"
  300.    @SiIOSet  =  "300,310,320,330,NONE"
  301.    @AdIOSet  =  "388,NONE"
  302.    @JoyIOSet =  "200,NONE" 
  303.  
  304. @EndIf  // ***** QAINFO PROMPT OPTIONS
  305.  
  306. // ***** configure board with suggested settings
  307.  
  308. @If (@ModifyMode == 0)
  309. // Set Aria parameters to first available setting in respective parameter sets 
  310. // value will be either a valid value or "NONE"
  311.  
  312.       @ArPort = @NextAvailSetting(@ArIOSet,"20")
  313.       @ArIRQ  = @NextAvailSetting(@ArIRQSet,"20")
  314.       @ArDMA  = @NextAvailSetting(@ArDMASet,"20")
  315.       @SBPort = @NextAvailSetting(@SBIOSet,"20")
  316.       @SBIRQ  = @NextAvailSetting(@SBIRQSet,"5")
  317.       @If(!(@StrToInt(@SBIRQ) == 7))
  318.      @SBIRQ = @NextAvailSetting(@SBIRQSet,"20")
  319.       @EndIf
  320.       @SBDMA  = @NextAvailSetting(@SBDMASet,"20")
  321.       @MiPort = @NextAvailSetting(@MiIOSet,"20")
  322.       @MiIRQ  = @NextAvailSetting(@MiIRQSet,@SBIRQ) 
  323.       @SiPort = @NextAvailSetting(@SiIOSet,@MiPort)
  324.       @AdPort  = @NextAvailSetting(@AdIOSet,"20") 
  325. //      @JoyPort = @NextAvailSetting(@JoyIOSet,"20")    Default setting is disabled
  326.  
  327.  
  328.  
  329. @Else  // ***** User will be modifying settings in current configuration
  330.        // ***** retrieve current configuration 
  331.  
  332.      @ArPort = @ReadLine("aria.cfg",0,"=")
  333.      @ArIRQ  = @ReadLine("aria.cfg",1,"=")    
  334.      @ArDMA  = @ReadLine("aria.cfg",2,"=")
  335.      @SBPort = @ReadLine("aria.cfg",3,"=")
  336.      @SBIRQ  = @ReadLine("aria.cfg",4,"=")
  337.      @SBDMA  = @ReadLine("aria.cfg",5,"=")
  338.      @MiPort = @ReadLine("aria.cfg",6,"=")
  339.      @MiIRQ  = @ReadLine("aria.cfg",7,"=")
  340.      @SIPort = @ReadLine("aria.cfg",8,"=")
  341.      @AdPort = @ReadLine("aria.cfg",10,"=")      
  342.      @JoyPort = @ReadLine("aria.cfg",11,"=")      
  343.      @JoySpeed = @ReadLine("aria.cfg",12,"=")
  344.      
  345.      @If (666 [= @Option)
  346.     @ClearOption(666)
  347.     @TempStr = "@ArPort*"
  348.     @If (@StrFind(@ArIOSet, @TempStr) > -1)
  349.        @SetOption(301)
  350.     @EndIf
  351.     @TempStr = "@ArIRQ*"
  352.     @If (@StrFind(@ArIRQSet, @TempStr) > -1)
  353.        @SetOption(302)
  354.     @EndIf
  355.     @TempStr = "@ArDMA*"
  356.     @If (@Strfind(@ArDMASet, @TempStr) > -1)
  357.        @SetOption(303)
  358.     @EndIf
  359.     @TempStr = "@SBPort*"
  360.     @If (@Strfind(@SBIOSet, @TempStr) > -1)
  361.        @SetOption(304)
  362.     @EndIf
  363.     @TempStr = "@SBIRQ*"
  364.     @If (@Strfind(@SBIRQSet, @TempStr) > -1)
  365.        @SetOption(305)
  366.     @EndIf
  367.     @TempStr = "@SBDMA*"
  368.     @If (@Strfind(@SBDMASet, @TempStr) > -1)
  369.        @SetOption(306)
  370.     @EndIf
  371.     @TempStr = "@MiPort*"
  372.     @If (@Strfind(@MiIOSet, @TempStr) > -1)
  373.        @SetOption(307)
  374.     @EndIf
  375.     @TempStr = "@MiIRQ*"
  376.     @If (@Strfind(@MiIRQSet, @TempStr) > -1)
  377.        @SetOption(308)
  378.     @EndIf
  379.     @TempStr = "@SiPort*"
  380.     @If (@Strfind(@SiIOSet, @TempStr) > -1)
  381.        @SetOption(309)
  382.     @EndIf
  383.  
  384.  
  385.     @TempStr = "@AdPort*"
  386.     @If (@Strfind(@AdIOSet, @TempStr) > -1)
  387.        @SetOption(311)
  388.     @EndIf
  389.     @TempStr = "@JoyPort*"
  390.     @If (@Strfind(@JoyIOSet, @TempStr) > -1)
  391.        @SetOption(312)
  392.     @EndIf
  393.     @EndIf
  394. @EndIf
  395.  
  396.     
  397.     
  398. @If(@StrFind(@JoyIOSet,"200*") > -1)   
  399.    @JoyIOSet = "NORMAL*,FAST*,NONE"
  400. @Else
  401.    @JoyIOSet = "NORMAL,FAST,NONE"
  402. @EndIf
  403.       
  404. @If (Q [= @Group)
  405.       @If(@StrIndex(@JoyPort,2) == 'N') 
  406.      @JoyPort2 = "NONE"
  407.       @Else
  408.      @If(@StrIndex(@JoySpeed,2) == 'R')
  409.         @JoyPort2 = "NORMAL"
  410.      @ElseIf(@StrIndex(@JoySpeed,2) == 'S')   
  411.         @JoyPort2 = "FAST"
  412.      @ElseIf(1)
  413.         @JoyPort2 = "NORMAL"
  414.      @EndIf
  415.       @EndIf
  416.  
  417.    @GoTo VERIFY_PARAMETERS
  418. @EndIf
  419. @JoySpeedSet = "NORMAL,FAST"
  420.     
  421. @ChDir("BIN")  
  422.  
  423. @Flag1 = 0
  424. ModifyParameters:
  425.       
  426. @If (@StrToInt(@ArPort) == -1) 
  427.      @ClearOption(301)
  428.      @ArIRQ = "NONE"
  429.      @ClearOption(302) 
  430.      @ArDMA = "NONE"
  431.      @ClearOption(303) 
  432.      @SBPort = "NONE"
  433.      @ClearOption(304) 
  434.      @SBIRQ = "NONE"
  435.      @ClearOption(305) 
  436.      @SBDMA = "NONE"
  437.      @ClearOption(306)
  438.      @MiPort = "NONE"
  439.      @ClearOption(307) 
  440.      @MiIRQ = "NONE"
  441.      @ClearOption(308) 
  442.      @SiPort = "NONE"
  443.      @ClearOption(309)     
  444.      @AdPort = "NONE"
  445.      @ClearOption(311)
  446.      @JoyPort = "NONE"
  447.      @JoyPort2 = "NONE"
  448.      @ClearOPtion(312)
  449.      @SetCursor(2)
  450.      @SetOption(300)  // flag ModifyParameter screen to display proper text
  451. @Else
  452.       @ClearOption(401)
  453.       @ClearOption(402)
  454.       @ClearOption(300)
  455.       @If(@StrToInt(@ArIRQ) == -1)
  456.      @ClearOption(302)
  457.      @ArDMA = "NONE"
  458.      @ClearOption(303) 
  459.       @EndIf
  460.       @If(@StrToInt(@SBPort) == -1) 
  461.      @SetOption(401)
  462.      @ClearOption(304)
  463.      @SBIRQ = "NONE"
  464.      @ClearOption(305)
  465.      @SBDMA = "NONE"
  466.      @ClearOption(306) 
  467.       @ElseIf(@StrToInt(@SBIRQ) == -1)
  468.      @ClearOption(305)
  469.      @SBDMA = "NONE"
  470.      @ClearOption(306) 
  471.       @EndIf
  472.       @If(@StrToInt(@MiPort) == -1) 
  473.      @SetOption(402)
  474.      @ClearOption(307)
  475.      @MiIRQ = "NONE"
  476.      @ClearOption(308) 
  477.       @EndIf
  478.       @If(@StrToInt(@SiPort) == -1) 
  479.      @ClearOption(309)
  480.       @EndIf
  481.       @If(@StrToInt(@AdPort) == -1) 
  482.      @ClearOption(311)
  483.       @EndIf
  484.       @If(@StrToInt(@JoyPort) == -1) 
  485.      @JoyPort2 = "NONE"
  486.      @ClearOption(312)
  487.       @Else
  488.      @JoyPort2 = "@JoySpeed"
  489.       @EndIf
  490. @EndIf
  491.     
  492.      @GetOption2(15,3,0,112)
  493.     @FlushKeyboard    
  494.     @ClearOption(1)
  495.     @ClearOption(2)
  496.     @ClearOption(3)
  497.     @ClearOption(4)
  498.     @ClearOption(5)
  499.     @ClearOption(6)
  500.     @ClearOption(7)
  501.     @ClearOption(8)
  502.     @ClearOption(9)
  503.     @ClearOption(10)
  504.     @ClearOption(11)
  505.     @ClearOption(12)
  506.     @ClearOption(13)
  507.     @ClearOption(14)
  508.     @ClearOption(15)
  509.     @ClearOption(16)
  510.     @LocalWindow(10,35)                              @If(!(300 [= @Option))
  511.     @Option 15 = "Store settings/Continue"
  512.     @Option 14 = "Verify Settings/Play Tests"        @Else
  513.     @Option 16 = "Return to main menu"
  514.     @Option 15 = "Store as disabled/Exit"            @EndIf
  515.     @If(301 [= @Option) 
  516.     @Option 1 = "Aria I/O Port (290)       : @Arport  *"
  517.     @Else
  518.     @Option 1 = "Aria I/O Port (290)       : @Arport   " 
  519.     @EndIf                                           @If(!(300 [= @Option))        
  520.     @If(302 [= @Option)
  521.     @Option 2 = "Aria IRQ (10)             : @ArIrq   *"
  522.     @Else
  523.     @Option 2 = "Aria IRQ (10)             : @ArIrq    "    
  524.     @EndIf
  525.     @If(303 [= @Option)
  526.     @Option 3 = "Aria DMA (5)              : @ArDma    *"
  527.     @Else
  528.     @Option 3 = "Aria DMA (5)              : @ArDma    "
  529.     @EndIf                                           @EndIf
  530.     @If(304 [= @Option) 
  531.     @Option 4 = "SB Emul I/O Port(220)     : @SBPort  *"
  532.     @Else
  533.     @Option 4 = "SB Emul I/O Port(220)     : @SBPort   "     
  534.     @EndIf                                           @If(!(300 [= @Option))
  535.     @If(305 [= @Option)
  536.     @Option 5 = "SB Emul IRQ(7)            : @SBIrq    *"
  537.     @Else
  538.     @Option 5 = "SB Emul IRQ(7)            : @SBIrq    "  
  539.     @EndIf
  540.     @If(306 [= @Option)
  541.     @Option 6 = "SB Emul DMA(1)            : @SBDma    *"
  542.     @Else
  543.     @Option 6 = "SB Emul DMA(1)            : @SBDma     "  
  544.     @EndIf                                           @EndIf
  545.     @If(307 [= @Option) 
  546.     @Option 7 = "MIDI I/O Port(330)        : @MiPort  *"
  547.     @Else
  548.     @Option 7 = "MIDI I/O Port(330)        : @MiPort  "  
  549.     @EndIf                                           @If(!(300 [= @Option)) 
  550.     @If(308 [= @Option)
  551.     @Option 8 = "MIDI IRQ(2/9)             : @MiIrq    *"
  552.     @Else
  553.     @Option 8 = "MIDI IRQ(2/9)             : @MiIrq    " 
  554.     @EndIf                                          @EndIf
  555.     @If(311 [= @Option)
  556.     @Option 11 ="ADLIB I/O Port(388)       : @AdPort  *"
  557.     @Else
  558.     @Option 11 ="ADLIB I/O Port(388)       : @AdPort   "
  559.     @EndIf
  560.     @If(312 [= @Option)
  561.     @Option 12 ="Joystick I/O Port(NORMAL) : @JoyPort2  *"
  562.     @Else
  563.     @Option 12 ="Joystick I/O Port(NORMAL) : @JoyPort2   "  
  564.     @EndIf                                            
  565.     @Cls 
  566. @If(!(300 [= @Option)) @If(@ModifyMode == 1) @MoveCStr(1,21,31,"CURRENT SOUND CARD SETTINGS") @Else @MoveCStr(1,19,31,"SUGGESTED SOUND CARD SETTINGS")@EndIf 
  567.  
  568.           
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  Default values are in parentheses.  Highlight a parameter and hit <Enter> to
  583.  view alternate settings. "NONE" indicates that a parameter is disabled.  An
  584.  asterisk (*) indicates that a setting is unavailable.  
  585.  
  586.   
  587.                  @Else  @MoveCStr(1,22,31,"THE SOUND CARD IS DISABLED")   
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.    
  600.  
  601.      The Aria I/O Port is set to "NONE".  Your sound card is disabled.  
  602.      You must set the Aria I/O Port to a valid value to enable the board.  
  603.      Highlight "Aria I/O Port (290) :NONE" and hit <Enter> to view 
  604.      alternate port settings.  You must enable the sound card before 
  605.      configuring any other parameters. @EndIf @EndOption 
  606. @If (1 [= @Option)  //Modify Parameter Options
  607.     @ClearOption(301)
  608.     @Parameter = 0
  609.     @SetStr = "@ArIOSet"
  610. @ElseIf (2 [= @Option)
  611.     @ClearOption(302)   
  612.     @Parameter = 1
  613.     @SetStr = "@ArIRQSet"
  614. @ElseIf (3 [= @Option)
  615.     @ClearOption(303)   
  616.     @Parameter = 2
  617.     @SetStr = "@ArDMASet"
  618. @ElseIf (4 [= @Option)
  619. @If (300 [= @Option) @SetCursor(2) @GoTo ModifyParameters @EndIf 
  620.     @ClearOption(304)   
  621.     @Parameter = 3
  622.     @SetStr = "@SBIOSet"
  623. @ElseIf (5 [= @Option)
  624.     @If(401 [= @Option)
  625.        @Display
  626.             SOUND BLASTER I/O PORT DISABLED
  627.  
  628.  
  629.  
  630.     You must set the Sound Blaster I/O Port (SB Emul I/O Port) to 
  631.     a valid address value before configuring either the Sound Blaster 
  632.     IRQ or DMA channel. 
  633.  
  634.  
  635.        @Pause
  636.        @EndDisplay
  637.        @SetCursor(6)
  638.        @GoTo ModifyParameters
  639.     @EndIf
  640.     @ClearOption(305)
  641.     @Parameter = 4
  642.     @SetStr = "@SBIRQSet"
  643. @ElseIf (6 [= @Option)
  644.     @If(401 [= @Option)
  645.        @Display
  646.             SOUND BLASTER I/O PORT DISABLED
  647.  
  648.  
  649.  
  650.     You must set the Sound Blaster I/O Port (SB Emul I/O Port) to 
  651.     a valid address value before configuring either the Sound Blaster 
  652.     IRQ or DMA channel. 
  653.  
  654.  
  655.        @Pause
  656.        @EndDisplay
  657.        @SetCursor(7)
  658.        @GoTo ModifyParameters
  659.     @EndIf
  660.     @ClearOption(306)
  661.     @Parameter = 5
  662.     @SetStr = "@SBDMASet"
  663. @ElseIf (7 [= @Option)
  664. @If (300 [= @Option) @SetCursor(2) @GoTo ModifyParameters @EndIf  
  665.     @ClearOption(307)
  666.     @Parameter = 6
  667.     @SetStr = "@MiIOSet"
  668. @ElseIf (8 [= @Option)
  669.     @If(402 [= @Option)
  670.        @Display
  671.                  MIDI I/O PORT DISABLED
  672.  
  673.  
  674.  
  675.     You must set the MIDI I/O Port to a valid address value before 
  676.     configuring the MIDI IRQ. 
  677.  
  678.  
  679.        @Pause
  680.        @EndDisplay
  681.        @SetCursor(9)
  682.        @GoTo ModifyParameters
  683.     @EndIf
  684.  
  685.  
  686.     @ClearOption(308)
  687.     @Parameter = 7
  688.     @SetStr = "@MiIRQSet"
  689. @ElseIf (9 [= @Option)
  690. @If (300 [= @Option) @SetCursor(2) @GoTo ModifyParameters @EndIf   
  691.     @ClearOption(309)
  692.     @Parameter = 8
  693.     @SetStr = "@SiIOSet"
  694. @ElseIf (11 [= @Option)
  695. @If (300 [= @Option) @SetCursor(2) @GoTo ModifyParameters @EndIf    
  696.     @ClearOption(311)
  697.     @Parameter = 10
  698.     @SetStr = "@AdIOSet"
  699. @ElseIf (12 [= @Option)
  700. @If (300 [= @Option) @SetCursor(2) @GoTo ModifyParameters @EndIf   
  701.     @ClearOption(312)
  702.     @Parameter = 11
  703.     @SetStr = "@JoyIOSet"
  704. @ElseIf (13 [= @Option)
  705.     @ClearOption(313)
  706.     @Parameter = 12
  707.     @SetStr = "@JoySpeedSet"
  708. @ElseIf(15 [= @Option)  
  709.     @GoTO SaveConfiguration
  710. @ElseIf(16 [= @Option)
  711.     @GoTo MainMenu
  712. @ElseIf (14 [= @Option)   //Modify Parameters Option 12
  713.     @ChDir("..")
  714.     @GoTo VERIFY_PARAMETERS
  715. @EndIf // ***** ModifyParameters Options
  716.  
  717.  
  718. // ***** show available settings for each parameter 
  719. // ***** use asterisk to identify setting that is not available
  720. ShowAlternateSettings: 
  721.  
  722. @Setting1 = @StrToken(@SetStr,0,",")
  723. @Setting2 = @StrToken(@SetStr,1,",")  
  724. @Setting3 = @StrToken(@SetStr,2,",")  
  725. @Setting4 = @StrToken(@SetStr,3,",")  
  726. @Setting5 = @StrToken(@SetStr,4,",")      
  727.  
  728. @GetOption
  729. @FlushKeyboard    
  730. @ClearOption(1)
  731. @ClearOption(2)
  732. @ClearOption(3)
  733. @ClearOption(4)
  734. @ClearOption(5)
  735. @LocalWindow(6,35)
  736.     @Option 1 = "@Setting1"
  737.     @Option 2 = "@Setting2"
  738.    @Endif
  739.    @If((@StrToInt(@Setting3) > -1) || (@StrIndex(@Setting3,0) == 'N'))
  740.     @Option 3 = "@Setting3"
  741.    @Endif
  742.    @If((@StrToInt(@Setting4) > -1) || (@StrIndex(@Setting4,0) == 'N'))  
  743.     @Option 4 = "@Setting4"
  744.    @Endif
  745.    @If((@StrToInt(@Setting5) > -1) || (@StrIndex(@Setting5,0) == 'N'))  
  746.     @Option 5 = "@Setting5"
  747.    @Endif
  748.  
  749.    @Cls
  750.      Select an alternate setting:
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.      
  759.      An asterisk following a parameter indicates that the PC diagnostic
  760.      utility has determined that the parameter is not available.  You
  761.      may still select this value, but this may cause a conflict with 
  762.      another device in your system.  
  763.  
  764.      Choose "NONE" to disable a parameter.  Selecting "NONE" for a port 
  765.      address setting disables the related IRQ and DMA settings.  
  766.  
  767.      If you select a value that was previously assigned to a different
  768.      parameter, the other parameter will be assigned a new value. Note
  769.      that when you return to the Parameter screen, other parameter values 
  770.      in addition to the one just modified may have different values.
  771. @EndOption
  772.  
  773. @If (1 [= @Option)
  774.     @TempStr = "@Setting1"
  775. @ElseIf (2 [= @Option)
  776.     @TempStr = "@Setting2"
  777. @ElseIf (3 [= @Option)
  778.     @TempStr = "@Setting3"
  779. @ElseIf (4 [= @Option)
  780.     @TempStr = "@Setting4"
  781. @ElseIf (5 [= @Option)
  782.     @TempStr = "@Setting5"
  783. @EndIf
  784.  
  785. @Flag1 = @StrFind(@TempStr,"*")
  786. @If ( @Flag1 > -1)
  787.     @TempStr = @StrHead(@TempStr,@Flag1)
  788.     @SetOption(399)
  789. @EndIf
  790.    
  791. @Flag2 = (@StrIndex(@TempStr,2) == 'N')
  792. AssignValue:
  793.  
  794. @If (@Parameter == 0)
  795.     @If((!(@StrIndex(@ArPort,1) == @StrIndex(@TempStr,1))) && (!@Flag2)  && (C [= @Group))
  796.        @SetGroup(U)
  797.     @EndIf
  798.     @ArPort = "@TempStr"  
  799.     @If(399 [= @Option)@SetOption(301)@EndIf
  800.     @SetCursor(2)
  801. @ElseIf (@Parameter == 1)
  802.     @If((!(@StrIndex(@ArIRQ,1) == @StrIndex(@TempStr,1))) && (!@Flag2)  && (C [= @Group))
  803.        @SetGroup(U)
  804.     @EndIf
  805.     @ArIRQ = "@TempStr"
  806.     @If(399 [= @Option)@SetOption(302)@EndIf
  807.     @SetCursor(3)
  808. @ElseIf (@Parameter == 2)
  809.     @ArDMA = "@TempStr"
  810.     @If(399 [= @Option)@SetOption(303)@EndIf
  811.     @SetCursor(4)
  812. @ElseIf (@Parameter == 3)
  813.     @SBPort = "@TempStr"
  814.     @If(399 [= @Option)@SetOption(304)@EndIf
  815.     @SetCursor(5)
  816. @ElseIf (@Parameter == 4)
  817.     @SBIRQ = "@TempStr"
  818.     @If(399 [= @Option)@SetOption(305)@EndIf
  819.     @If((@StrFind(@SBIRQ,@MiIRQ) > -1) && (!(@StrToInt(@SBIRQ) == -1)))
  820.         @MiIRQ = @NextAvailSetting(@MiIRQSet,@SBIRQ)  
  821.         @If(!(@StrToInt(@SBIRQ) == -1)) @SetGroup(U)
  822.     @EndIf
  823.         
  824.         @Display
  825.              MIDI IRQ CHANGED TO: @MiIRQ
  826.  
  827.     The Sound Blaster IRQ you selected is the same as the current MIDI 
  828.     IRQ.  CONFIG will change the current MIDI IRQ, setting it to the 
  829.     next available value (shown above).  If there is no available IRQ 
  830.     setting, the MIDI IRQ will be disabled (set to "NONE"); and you 
  831.     will not be able to use the MIDI interface of your sound card.   
  832.     
  833.     On the following screen, you will have the opportunity to select 
  834.     alternate values for the MIDI IRQ.  Remember that you may force 
  835.     MIDI IRQ to a setting that is marked by an asterisk as unavailable.  
  836.     Note that this may result in a conflict with another device, and 
  837.     your system could hang.
  838.         @Pause
  839.         @EndDisplay
  840.     @EndIf
  841.     @SetCursor(6)
  842. @ElseIf (@Parameter == 5)
  843.     @SBDMA = "@TempStr"
  844.     @If(399 [= @Option)@SetOption(306)@EndIf
  845.     @SetCursor(7)
  846. @ElseIf (@Parameter == 6)
  847.     @If((!(@StrIndex(@MiPort,1) == @StrIndex(@TempStr,1))) && (!@Flag2)  && (C [= @Group))
  848.        @SetGroup(U)
  849.     @EndIf
  850.     @MiPort = "@TempStr" 
  851.     @If(399 [= @Option)@SetOption(307)@EndIf
  852.     @SetCursor(8)
  853. @ElseIf (@Parameter == 7)
  854.     @If((!(@StrIndex(@MiIRQ,0) == @StrIndex(@TempStr,0))) && (!@Flag2) && (C [= @Group)) 
  855.        @SetGroup(U)
  856.     @EndIf
  857.     @MiIRQ = "@TempStr"  
  858.     @If(399 [= @Option)@SetOption(308)@EndIf
  859.     @If ((@StrFind(@MiIRQ,@SBIRQ) > -1) && (!(@StrToInt(@MiIRQ) == -1)))
  860.         @SBIRQ = @NextAvailSetting(@SBIRQSet,@MiIRQ)  
  861.         @Display
  862.             SOUND BLASTER IRQ CHANGED TO: @SBIRQ
  863.  
  864.     The MIDI IRQ you selected is the same as the current Sound Blaster 
  865.     IRQ.  CONFIG will change the current Sound Blaster IRQ, setting it 
  866.     to the next available value (shown above).  If there is no available 
  867.     IRQ setting, the Sound Blaster IRQ will be disabled (set to "NONE"); 
  868.     and you will not be able to use the Sound Blaster emulation feature 
  869.     of your sound card.   
  870.     
  871.     On the following screen, you will have the opportunity to select 
  872.     alternate values for the Sound Blaster IRQ (SB Emul IRQ).  Remember 
  873.     that you may force the Sound Blaster IRQ to a setting that is marked
  874.     by an asterisk as unavailable.  Note that this may result in a 
  875.     conflict with another device, and your system could hang.
  876.         @Pause
  877.         @EndDisplay
  878.     @EndIf
  879.     @SetCursor(9)
  880. @ElseIf (@Parameter == 10)
  881.     @AdPort = "@TempStr"
  882.     @If(399 [= @Option)@SetOption(311)@EndIf
  883.     @SetCursor(10)
  884. @ElseIf (@Parameter == 11)
  885.     @If (@StrFind(@TempStr,"NORM") > -1)
  886.        @JoyPort = "200"
  887.        @JoySpeed = "NORMAL"
  888.     @ElseIf (@StrFind(@TempStr,"FAST") > -1) 
  889.        @JoyPort = "200"
  890.        @JoySpeed = "FAST"
  891.     @ElseIf (@StrFind(@TempStr,"NONE") > -1)   
  892.        @JoyPort = "NONE"
  893.        @JoySpeed = "NORMAL"
  894.     @EndIf
  895.     @If(399 [= @Option)@SetOption(312)@EndIf
  896.     @SetCursor(11)
  897. @ElseIf (@Parameter == 12)
  898.     @JoySpeed = "@TempStr"
  899.     @If(399 [= @Option)@SetOption(313)@EndIf
  900.     @SetCursor(12)
  901. @EndIf
  902. @ClearOption(399)
  903. @GoTo ModifyParameters
  904.  
  905.  
  906.  
  907. VERIFY_PARAMETERS:
  908.  
  909. @Write("aria.cfg","wt","ARIA_BASE=@ArPort\n")
  910. @Write("aria.cfg","at","ARIA_IRQ=@ArIRQ\n") 
  911. @Write("aria.cfg","at","ARIA_DMA=@ArDMA\n") 
  912. @Write("aria.cfg","at","SB_BASE=@SBPort\n") 
  913. @Write("aria.cfg","at","SB_IRQ=@SBIRQ\n") 
  914. @Write("aria.cfg","at","SB_DMA=@SBDMA\n") 
  915. @Write("aria.cfg","at","MIDI_BASE=@MiPort\n") 
  916. @Write("aria.cfg","at","MIDI_IRQ=@MiIRQ\n") 
  917. @Write("aria.cfg","at","CD-ROM=NONE\n") 
  918. @Write("aria.cfg","at","SCSI_IRQ=NONE\n") 
  919. @Write("aria.cfg","at","ADLIB_BASE=@AdPort\n") 
  920. @Write("aria.cfg","at","JOYSTICK_BASE=@JoyPort\n") 
  921. @Write("aria.cfg","at","JOYSTICK_SPEED=@JoySpeed\n") 
  922. @Write("aria.cfg","at","ROM_SIZE=512\n")     
  923. @Spawn("BIN\\boardcfg /Se 0 aria.cfg")
  924.  
  925. CHECKARIABOARD:
  926.    
  927. @If (!(@Spawn("BIN\\findaria.com") > 0))
  928.    @Display
  929.       @FlushKeyboard    
  930.         ARIA BOARD NOT DETECTED IN YOUR COMPUTER SYSTEM
  931.  
  932.  
  933.  
  934.      The Aria sound card must be physically installed in your PC 
  935.      before running this configuration program.  Press any key to exit to 
  936.      the DOS prompt, turn off your system, place the sound card in your
  937.      computer, and re-run this program.
  938.  
  939.      If the sound card is installed, re-boot your system by turning your
  940.      computer off and on; and re-run the coniguration program.  Simply 
  941.      hitting Ctr-Alt-Delete or RESET will not re-initialize the sound board.
  942.  
  943.       @PauseX
  944.    @EndDisplay
  945.    @Exit
  946. @EndIf
  947.    
  948. @ChDir("BIN")   
  949. @ArPortHex = @HexToDec("@ArPort")
  950. @SBPortHex = @HexToDec("@SBPort")  
  951. @MiPortHex = @HexToDec("@MiPort")   
  952.  
  953. @If (Q [= @Group)   //QUICK_VERIFY
  954.    @Display
  955.             EXECUTING SOUND BOARD VERIFICATION PROGRAM
  956.  
  957.  
  958.      If you experience any problems while running this verification utility,
  959.      type "config" from the ARIA directory on your hard drive.  Select  
  960.      "Change hardware settings", and choose "Run the diagnostic utility".  
  961.      From the CURRENT SETTINGS Menu, do not run the verification procedure 
  962.      after choosing your hardware settings.  Select "Store settings..." 
  963.      to continue with the configuration program. 
  964.      
  965.      
  966.      Verifying @If(@Spawn("testaria 5 @ArPortHex") == 0)..@ClearOption(301)@ELSE@SetOption(301)@EndIf@If(301 [= @Option)@Else@If(@Spawn("testaria 6 @ArPortHex @ArIrq") == 0)..@ClearOption(302)@ELSE@SetOption(302)@EndIf@EndIf@If(301 [= @Option
  967.      )@Else@If(@Spawn("testaria 7 @ArPortHex @ArIrq @ArDma") == 0)..@ClearOption(303)@ELSE@SetOption(303)@EndIf@EndIf@If(@Spawn("testaria 8 @SBPortHex") == 0)..@ClearOption(304)@ELSE@SetOption(304)@EndIf@If(304 [= @Option
  968.      )@Else@If(@Spawn("testaria 9 @SBPortHex @SBIrq") == 0)..@ClearOption(305)@ELSE@SetOption(305)@EndIf@EndIf@If(304 [=@Option)@Else@If(@Spawn("testaria 10 @SBPortHex @SBIrq @SBDma")==0)..@ClearOption(306)@ELSE@SetOption(306)@EndIf@EndIf@If(
  969.      @Spawn("testaria 11 @MiPortHex") == 0)..@ClearOption(307)@ELSE@SetOption(307)@EndIf@If(307 [= @Option)@Else@If(@Spawn("testaria 12 @MiPortHex @MiIrq") == 0)..@ClearOption(308)@ELSE@SetOption(308)@EndIf@EndIf
  970.       
  971.    @Pause
  972.    @EndDisplay
  973. @Else   // CUSTOM VERIFY
  974.    @Display
  975.             VERIFYING SOUND CARD SETTINGS
  976.       @If(@StrFind(@ArPort,"NONE") > -1)
  977.      @SetOption(301)
  978.  
  979.  Aria I/O Port: NONE   The sound card is disabled.  
  980.  
  981.  You must set the Aria I/O Port to a valid value to enable the card.
  982.  You will not be able to configure any sound board parameters until the
  983.  sound board is enabled. 
  984.  
  985.       @Else 
  986.  Verifying Aria I/O PORT :@ArPort @If(@Spawn("testaria 5 @ArPortHex") == 0)@MoveCStr(3,32,31,"FOUND")@ClearOption(301)@ELSE@MoveCstr(3,32,30,"NOT FOUND")@SetOption(301)@EndIf  
  987.  Verifying Aria IRQ      :@ArIRQ @If(301 [= @Option)@MoveCStr(4,32,30,"NOT TESTED")@Else@If(@Spawn("testaria 6 @ArPortHex @ArIrq") == 0)@movecstr(4,32,31,"FOUND")@ClearOption(302)@ELSE@MoveCStr(4,32,30,"NOT FOUND")@SetOption(302)@EndIf@EndIf
  988.  Verifying Aria DMA      :@ArDMA @If(301 [= @Option)@MoveCStr(5,32,30,"NOT TESTED")@Else@If(@Spawn("testaria 7 @ArPortHex @ArIrq @ArDma") == 0)@MoveCStr(5,32,31,"FOUND")@ClearOption(303)@ELSE@MoveCStr(5,32,30,"NOT FOUND")@SetOption(303)@EndIf@EndIf
  989.  Verifying Synthesizer Playback................. @If(301 [= @Option)@MoveCStr(6,51,30,"NOT TESTED")@Else@If(@Spawn("testaria 4 @ArPortHex") == 0)@MoveCStr(6,51,31,"TEST PASSED")@Else@MoveCStr(6,51,30,"TEST FAILED")@EndIf@EndIf
  990.  Verifying Digital Audio Playback............... @If(301 [= @Option)@MoveCStr(7,51,30,"NOT TESTED")@Else@If(@Spawn("testaria 3 @ArPortHex @ArIRQ @ArDMA") == 0)@MoveCStr(7,51,31,"TEST PASSED")@Else@MoveCStr(7,51,30,"TEST FAILED")@EndIf@EndIf
  991.        @If (@StrFind(@SBPort,"NONE") > -1) 
  992.  SB I/O Port  : NONE   Sound Blaster emulation is disabled
  993.  SB IRQ       : NONE   SB I/O Port must be enabled before setting SB IRQ 
  994.  SB DMA       : NONE   SB I/O Port must be enabled before setting SB DMA 
  995.  Sound Blaster emulation playback not tested @Else 
  996.  Verifying SB I/O PORT   :@SBPort @If(@Spawn("testaria 8 @SBPortHex") == 0)@movecstr(9,32,31,"FOUND")@ClearOption(304)@ELSE@movecstr(9,32,30,"NOT FOUND")@SetOption(304)@EndIf
  997.  Verifying SB IRQ        :@SBIRQ @If(304 [= @Option)@MovecStr(10,32,30,"NOT TESTED")@Else@If(@Spawn("testaria 9 @SBPortHex @SBIrq") == 0)@movecstr(10,32,31,"FOUND")@ClearOption(305)@ELSE@movecstr(10,32,30,"NOT FOUND")@SetOption(305)@EndIf@EndIf
  998.  Verifying SB DMA        :@SBDMA @If(304 [= @Option)@MovecStr(11,32,30,"NOT TESTED")@Else@If(@Spawn("testaria 10 @SBPortHex @SBIrq @SBDma") == 0)@movecstr(11,32,31,"FOUND")@ClearOption(306)@ELSE@movecstr(11,32,30,"NOT FOUND")@SetOption(306)@EndIf@EndIf
  999.  Verifying Sound Blaster emulation playback..... @If(304 [= @Option)@MovecStr(12,51,30,"NOT TESTED")@Else @If(@Spawn("testaria 2 @SBPortHex") == 0)@MoveCStr(12,51,31,"TEST PASSED")@Else@MoveCStr(12,51,30,"TEST FAILED")@EndIf@EndIf@EndIf
  1000.       @If (@StrFind(@MiPort,"NONE") > -1)
  1001.  MIDI I/O PORT: NONE   MIDI interface is disabled
  1002.  MIDI IRQ     : NONE   MIDI I/O Port must be enabled before setting MIDI IRQ @Else@If(J [= @Group) 
  1003.  Verifying MIDI I/O PORT :@MiPort   @If(@Spawn("testaria 11 @MiPortHex") != 0)@moveCStr(14,1,30,"The MIDI PORT and IRQ can not be verified until you change the   ")@moveCStr(15,1,30,"jumpers/switches on your CD-ROM card, re-boot, and re-run CONFIG")
  1004.  @Else@If(@Spawn("testaria 11 @MiPortHex") == 0)@movecstr(14,32,31,"FOUND")@ClearOption(307)@ELSE@If(!(J [= @Group))@moveCStr(14,32,30,"NOT FOUND")@Else@moveCStr(14,32,30,"NOT TESTED")@EndIf@SetOption(307)@EndIf
  1005.  Verifying MIDI IRQ      :@MiIRQ     @If(307 [= @Option)@MovecStr(15,32,30,"NOT TESTED")@Else@If(@Spawn("testaria 12 @MiPortHex @MiIrq") == 0)@movecstr(15,32,31,"FOUND")@ClearOption(308)@ELSE@movecstr(15,32,30,"NOT FOUND")@SetOption(308)@EndIf@EndIf
  1006.  @EndIf@Else
  1007.  Verifying MIDI I/O PORT :@MiPort  @If(@Spawn("testaria 11 @MiPortHex") == 0)@movecstr(14,32,31,"FOUND")@ClearOption(307)@ELSE@If(!(J [= @Group))@moveCStr(14,32,30,"NOT FOUND")@Else@moveCStr(14,32,30,"NOT TESTED")@EndIf@SetOption(307)@EndIf
  1008.  Verifying MIDI IRQ      :@MiIRQ   @If(307 [= @Option)@MovecStr(15,32,30,"NOT TESTED")@Else@If(@Spawn("testaria 12 @MiPortHex @MiIrq") == 0)@movecstr(15,32,31,"FOUND")@ClearOption(308)@ELSE@movecstr(15,32,30,"NOT FOUND")@SetOption(308)@EndIf@EndIf
  1009.  @EndIf@EndIf@EndIf 
  1010.  @Pause 
  1011.    @EndDisplay
  1012. @EndIf
  1013.  
  1014. TEST_RESULTS:
  1015. @If((301 [= @Option) || (302 [= @Option) || (303 [= @Option) || 
  1016.     (304 [= @Option) || (305 [= @Option) || (306 [= @Option) || 
  1017.     (307 [= @Option) || (308 [= @Option))  //Test Failed
  1018.      @If(Q [= @Group)
  1019.     @ClearGroup(Q)
  1020.     @SetGroup(C)
  1021.     @SetGroup(V)
  1022.      @EndIf
  1023.      @GoTo ModifyParameters 
  1024. @EndIf
  1025.  
  1026. TestPassed:
  1027.  
  1028. @GetOption
  1029. @ClearOption(1)
  1030. @ClearOption(2)
  1031.     @Option 1 = "Save configuration"
  1032.     @Option 2 = "Change settings"
  1033.  
  1034. @LocalWindow(18,33)
  1035. @Cls
  1036.             VERIFICATION TEST PASSED
  1037.  
  1038.      CONFIG has verified the following sound card settings:
  1039.  
  1040.                Aria I/O Port       :@ArPort
  1041.                Aria IRQ            :@ArIRQ
  1042.                Aria DMA            :@ArDMA
  1043.                SB Emulation Port   :@SBPort
  1044.                SB Emulation IRQ    :@SBIRQ
  1045.                SB Emulation DMA    :@SBDMA
  1046.                MIDI Port           :@MiPort 
  1047.                MIDI IRQ            :@MiIRQ
  1048.                Adlib Port          :@AdPort
  1049.                Joystick (Speed)    :@JoyPort2
  1050.               
  1051.          
  1052.  
  1053.  
  1054.  @EndOption
  1055. @If(2 [= @Option)
  1056.      @FlushOptions()
  1057.      @If(Q [= @Group)
  1058.     @ClearGroup(Q)
  1059.     @SetGroup(C)
  1060.     @SetGroup(V)
  1061.      @EndIf
  1062.      @GoTo ModifyParameters
  1063. @EndIf
  1064. SaveConfiguration:
  1065.       
  1066.       @ChDir("..")
  1067.       @Write("aria.cfg","wt","ARIA_BASE=@ArPort\n")
  1068.       @Write("aria.cfg","at","ARIA_IRQ=@ArIRQ\n") 
  1069.       @Write("aria.cfg","at","ARIA_DMA=@ArDMA\n") 
  1070.       @Write("aria.cfg","at","SB_BASE=@SBPort\n") 
  1071.       @Write("aria.cfg","at","SB_IRQ=@SBIRQ\n") 
  1072.       @Write("aria.cfg","at","SB_DMA=@SBDMA\n") 
  1073.       @Write("aria.cfg","at","MIDI_BASE=@MiPort\n") 
  1074.       @Write("aria.cfg","at","MIDI_IRQ=@MiIRQ\n") 
  1075.       @Write("aria.cfg","at","CD-ROM=NONE\n") 
  1076.       @Write("aria.cfg","at","SCSI_IRQ=NONE\n") 
  1077.       @Write("aria.cfg","at","ADLIB_BASE=@AdPort\n") 
  1078.       @Write("aria.cfg","at","JOYSTICK_BASE=@JoyPort\n") 
  1079.       @Write("aria.cfg","at","JOYSTICK_SPEED=@JoySpeed\n") 
  1080.       @Write("cfg.001","wt","&!+   %# @@@@")
  1081.       @Write("aria.cfg","at","ROM_SIZE=512\n")     
  1082.       @Rsize = "R1"
  1083.       @If(@StrIndex(@ArPort,0) == 'N') @Setting4 ="NON" @Else @Setting4 = "@ArPort" @EndIf
  1084.       @If(@StrIndex(@ArIRQ,0) == 'N') @Setting5 ="NO" @Else @Setting5 = "@ArIRQ" @EndIf
  1085.       @If(@StrIndex(@MiPort,0) == 'N') @Setting2 ="NON" @Else @Setting2 = "@MiPort" @EndIf
  1086.       @If(@StrIndex(@MiIRQ,0) == 'N') @Setting3 ="N" @Else @Setting3 = "@MiIRQ" @EndIf
  1087.       @Write("WIN\\temp.txt","wt","A@Setting4 I@Setting5 M@Setting2 Q@Setting3 @Rsize S1")  
  1088.       @Spawn("BIN\\boardcfg /Se 0 aria.cfg")
  1089.       @If (300 [= @Option)
  1090.      @FlushOptions()
  1091.      @EXIT
  1092.       @EndIf
  1093. ModifyAutoexec:
  1094. @GetOption
  1095. @ClearOption(1)
  1096. @ClearOption(2)
  1097. @LocalWindow(17,35)
  1098. @Cls                    
  1099.               MODIFY AUTOEXEC.BAT & CONFIG.SYS
  1100.  
  1101.      The following lines should be added to your AUTOEXEC.BAT file:
  1102.         
  1103.     SET ARIA=A@ArPort I@ArIRQ D@ArDMA @AriaConf
  1104.     SET BLASTER=A@SBPort I@SBIRQ D@SBDMA @AriaConf 
  1105.     
  1106.      The following line should be added to your CONFIG.SYS file:
  1107.                                
  1108.     DEVICE=@AriaDir\BIN\SOUNDCFG.SYS @AriaDir\aria.cfg 
  1109.  
  1110.      Choose "Modify" to automatically make these changes.
  1111.  
  1112.  @Option 1 = "Modify"
  1113.  @Option 2 = "Do not modify"
  1114. @EndOption
  1115. @If (1 [= @Option)   
  1116.    @ChDrive(C)
  1117.    @ChDir("\\")
  1118.    @If (!@Exists("autoexec.bat"))
  1119.       @Display
  1120.        
  1121.     AUTOEXEC.BAT not found on drive C
  1122.     
  1123.     Consult the Aria Sound Card User's Guide about manually 
  1124.     modifying your AUTOEXEC.BAT file.
  1125.       
  1126.       @Pause
  1127.       @EndDisplay
  1128.    @Else    
  1129.       @AddFileStr("autoexec.bat","SET ARIA=A@ArPort I@ArIRQ D@ArDMA @AriaConf","SET ARIA=",0,"SET ARIA=",) 
  1130.       @AddFileStr("autoexec.bat","SET BLASTER=A@SBPort I@SBIRQ D@SBDMA @AriaConf","SET BLASTER=",1,"SET BLASTER=",) 
  1131.    @EndIf
  1132.    @If (!@Exists("config.sys"))
  1133.       @Display
  1134.        
  1135.     CONFIG.SYS not found on drive C
  1136.       
  1137.       @Pause
  1138.       @EndDisplay
  1139.    @Else    
  1140.       @AddFileStr("config.sys","DEVICE=@AriaDir\\BIN\\soundcfg.sys @AriaDir\\aria.cfg","\\BIN\\soundcfg",0,"aria.cfg",) 
  1141.    @EndIf
  1142.       @ChangeDir(@AriaDir)
  1143. @EndIf
  1144. @Flag1 = 0
  1145.  
  1146. @If(V [= @Group)   // resume quick install
  1147.   @ClearGroup(V)
  1148.   @ClearGroup(C)
  1149.   @SetGroup(Q)
  1150. @EndIf
  1151.  
  1152. UPDATE_WIN_DRIV:
  1153. @If (C [= @Group)
  1154.    @If (@Exists("wincfg.tmp"))
  1155.      @WinDir = @ReadLine("wincfg.tmp",0,"=")  
  1156.    @Else
  1157.      @WinDir = "C:\\WINDOWS"
  1158.    @EndIf
  1159.    @If( (@StrFind(@ArPort,"NONE") > -1) || 
  1160.       (!(U [= @Group)) || !@Exists("@WinDir\\SYSTEM\\aria.drv"))
  1161.       @ClearGroup(U) 
  1162.       @GoTo CUSTOM_MENU
  1163.    @EndIf
  1164.    @ClearGroup(U)
  1165.    @If(!(F [= @Group))  // not first-time custom install
  1166.       @GetOption
  1167.      @ClearOption(1)
  1168.      @ClearOption(2)
  1169.      @LocalWindow(13,38)   
  1170.      @Cls 
  1171.              UPDATE THE ARIA WINDOWS DRIVER 
  1172.  
  1173.  
  1174.  
  1175.      When you change your Aria I/O Port, Aria IRQ, MIDI I/O Port, or MIDI
  1176.      IRQ setting, you must update the Aria Windows driver with the 
  1177.      changed values.  CONFIG will automatically add the new settings to 
  1178.      your Windows SYSTEM.INI file.
  1179.                                         
  1180.      @Option 1 = "Update Windows driver" 
  1181.      @Option 2 = "Return to main menu"                  
  1182.       @EndOption
  1183.       @If (2 [= @Option)
  1184.      @GoTo CUSTOM_MENU
  1185.       @EndIf
  1186.       
  1187.       @If (@Exists("wincfg.tmp"))
  1188.      @WinDir = @ReadLine("wincfg.tmp",0,"=")  
  1189.       @Else
  1190.      @WinDir = "C:\\WINDOWS"
  1191.       @EndIf
  1192.  
  1193. GetWinChk:
  1194.  
  1195.       @If(@Exists("@WinDir\\system\\aria.drv")) 
  1196.      @Write("wincfg.tmp","wt","win=@WinDir\n")       
  1197.      @ChangeDir(@WinDir)
  1198.      @If(@BatStrExists("system.ini","[aria.drv]"))     
  1199.         @ReplaceFileStr("system.ini","dspport=","dspport=0x@ArPort",1)
  1200.         @ReplaceFileStr("system.ini","dspirq=","dspirq=@ArIRQ",1) 
  1201.         @ReplaceFileStr("system.ini","midiport=","midiport=0x@MiPort",1)
  1202.         @ReplaceFileStr("system.ini","midiirq=","midiirq=@MiIRQ",1)  
  1203.         @ChangeDir(@AriaDir)
  1204.         @ChDir("\\")
  1205.         @ChDir("@AriaDir")
  1206.         @Flag1 = 0
  1207.         @ClearGroup(U)
  1208.         @Goto Custom_Menu
  1209.      @Endif
  1210.       @Endif
  1211. GET_WIN_DIR:
  1212.       @FlushKeyboard 
  1213.  
  1214.       @GetString @WinDir
  1215.       @LocalWindow(15,29)
  1216.       @Prompt = "Windows directory"  
  1217.       @Cls   
  1218.             WINDOWS DRIVER CONFIGURATION NOT FOUND
  1219.  
  1220.  
  1221.      CONFIG does not detect a configured Aria Windows driver in the
  1222.      directory listed below.  Press the <ESC> key to erase the displayed 
  1223.      text, and type in the full path name to the Windows directory where the
  1224.      Aria driver is installed.  When specifying the full path, type 
  1225.      in the drive letter and directory name.  For example: C:\WINDOWS.
  1226.      
  1227.      If you have not installed the Aria Windows driver or want to
  1228.      return to the main menu, type 'NONE'.
  1229.      
  1230.       @EndString
  1231.       @If((@StrIndex(@WinDir,0) == 'n') ||
  1232.      (@StrIndex(@WinDir,0) == 'N'))
  1233.      @WinDir = "C:\\Windows"
  1234.      @GoTo CUSTOM_MENU
  1235.       @EndIf
  1236.       @GoTo GetWinChk
  1237.    @Else  // Initial Custom installation
  1238.       @GetOption
  1239.      @ClearOption(1)
  1240.      @ClearOption(2)
  1241.      @LocalWindow(13,39)   
  1242.      @Cls 
  1243.                SET UP THE ARIA WINDOWS DRIVER
  1244.  
  1245.  
  1246.  
  1247.      The Aria Windows driver is not currently installed.  Do you 
  1248.      want to set up the Aria Windows driver with the current sound
  1249.      card settings?
  1250.      
  1251.                                         
  1252.      @Option 1 = "Set up the Aria Windows driver" 
  1253.      @Option 2 = "Return to main menu"                  
  1254.      @EndOption
  1255.      @If(2 [= @Option)
  1256.     @GoTo Custom_Menu
  1257.      @EndIf
  1258.     @SetGroup(W)
  1259.   @EndIf
  1260.    @GoTo CUSTOM_MENU
  1261. @EndIf  // Set up Windows driver
  1262.  
  1263.  
  1264. SetupWin:
  1265. Setwinconf:
  1266. @If (W [= @Group)
  1267.    @If(C [= @Group)
  1268.       @If(!@Exists("aria.cfg"))
  1269.      @Display
  1270.             HARDWARE CONFIGURATION FILE NOT FOUND
  1271.  
  1272.  
  1273.      
  1274.      
  1275.      You must set up your hardware before setting up the Aria Windows driver.
  1276.      Press any key to return to the main menu.  From the main menu, select 
  1277.      "Change hardware settings" and configure your sound card.
  1278.      @Pause
  1279.      @EndDisplay
  1280.      @GoTo CUSTOM_MENU
  1281.       @Else
  1282.      @ArPort = @ReadLine("aria.cfg",0,"=")
  1283.      @ArIRQ  = @ReadLine("aria.cfg",1,"=")
  1284.      @MiPort = @ReadLine("aria.cfg",6,"=")
  1285.      @MiIRQ  = @ReadLine("aria.cfg",7,"=")
  1286.      @Setting1 = "S1"
  1287.      @If(@StrIndex(@ArPort,0) == 'N') @Setting4 ="NON" @Else @Setting4 = "@ArPort" @EndIf
  1288.      @If(@StrIndex(@ArIRQ,0) == 'N') @Setting5 ="NO" @Else @Setting5 = "@ArIRQ" @EndIf
  1289.      @If(@StrIndex(@MiPort,0) == 'N') @Setting2 ="NON" @Else @Setting2 = "@MiPort" @EndIf
  1290.      @If(@StrIndex(@MiIRQ,0) == 'N') @Setting3 ="N" @Else @Setting3 = "@MiIRQ" @EndIf
  1291.      
  1292.      @Write("WIN\\temp.txt","wt","A@ArPort I@ArIrq M@Setting2 Q@Setting3 @Rsize @Setting1")
  1293.       @EndIf   // aria.cfg exists
  1294.       
  1295.       @If (@Exists("wincfg.tmp"))
  1296.         @WinDir = @ReadLine("wincfg.tmp",0,"=")
  1297.       @Else
  1298.         @WinDir = "C:\\WINDOWS"   
  1299.       @EndIf
  1300.       @If (!@Exists("@WinDir\\win.com"))
  1301.      
  1302. GetWinDir3:   
  1303.      @FlushKeyboard 
  1304.  
  1305.      @GetString @WinDir
  1306.      @LocalWindow(13,29)
  1307.      @Prompt = "Windows directory"  
  1308.      @Cls   
  1309.                WINDOWS DIRECTORY NOT FOUND              
  1310.  
  1311.  
  1312.  
  1313.      If the directory path appearing in the displayed box is not the correct
  1314.      path to your Windows directory, press the <ESC> key to erase this text. 
  1315.      Type in the full path name.  When specifying the full path, type in the 
  1316.      drive letter and directory name.  For example: C:\WINDOWS.
  1317.  
  1318.      Type "NONE" to skip this screen and return to the main menu.
  1319.     @EndString
  1320.      @If((@StrIndex(@WinDir,0) == 'n') ||
  1321.           (@StrIndex(@WinDir,0) == 'N'))
  1322.         @WinDir = "C:\\Windows"
  1323.         @GoTo CUSTOM_MENU
  1324.      @EndIf
  1325.  
  1326.      @If (!@Exists("@WinDir\\win.com"))
  1327.          @Flag1 = 1
  1328.          @GoTo GetWinDir3
  1329.      @EndIf
  1330.      @Write("wincfg.tmp","wt","win=@WinDir\n")     
  1331.      @Flag1 = 0
  1332.      @EndIf  // Get Windows directory   
  1333.      
  1334.      @FlushKeyboard 
  1335.      @GetOption
  1336.      @ClearOption(1)
  1337.      @ClearOption(2)
  1338.      @ClearOption(3)
  1339.      @Option 1 =  "Install in Windows"
  1340.      @Option 2 =  "Return to main menu" 
  1341.      @Option 3 =  "Exit to DOS"
  1342.      @LocalWindow(19,39)
  1343.      @Cls   
  1344.                INSTALL ARIA WINDOWS DRIVER
  1345.     
  1346.      CONFIG will configure the driver with the following parameter values.
  1347.      Select "Return to main menu" to select alternate settings.
  1348.  
  1349.                  Aria I/O Port   :@ArPort
  1350.                  Aria IRQ        :@ArIRQ
  1351.                  MIDI I/O Port   :@MiPort
  1352.                  MIDI IRQ        :@MiIRQ
  1353.      
  1354.      NOTE.  Before running Aria with DOS applications, remember to re-boot
  1355.      your system to initialize DOS environment variables.  Re-boot by 
  1356.      turning the power off and on.
  1357.      @EndOption
  1358.      @If (3 [= @Option)
  1359.         @Spawn("BIN\\boardcfg /Se 0 aria.cfg")
  1360.         @Exit
  1361.      @ElseIf (2 [= @Option)
  1362.         @GoTo CUSTOM_MENU
  1363.      @EndIf
  1364.     
  1365.    @ElseIf(Q [= @Group)
  1366.  
  1367.      @FlushKeyboard 
  1368.  
  1369.      @GetOption
  1370.      @ClearOption(1)
  1371.      @ClearOption(2)
  1372.      @Option 1 = "Install in Windows"
  1373.      @Option 2 = "Exit to DOS"
  1374.      @LocalWindow(18,39)   
  1375.      @Cls   
  1376.                INSTALL ARIA WINDOWS DRIVER
  1377.    
  1378.  
  1379.  
  1380.      To set up the Aria Windows driver, the installation program 
  1381.      must now launch Microsoft Windows.      
  1382.  
  1383.      NOTE.  After the install program is done, remember to re-boot your
  1384.      computer before using Aria with DOS applications.  To re-boot, remove 
  1385.      the installation disk from your floppy drive, and turn the PC power off 
  1386.      and on. 
  1387.      @EndOption
  1388.      @If (2 [= @Option)
  1389.            
  1390.            @Display 
  1391.                 RE-BOOT YOUR COMPUTER 
  1392.  
  1393.  
  1394.      
  1395.      
  1396.      If you want to set up the Aria sound card in Windows at a later
  1397.      time, type "config" from the ARIA directory on your hard drive.  Choose
  1398.      "Set up Aria Windows driver".  Follow the instructions on the screens.
  1399.  
  1400.      After exiting the Aria sound card configuration program, you must 
  1401.      re-boot your computer in order to initialize the DOS environment 
  1402.      variables.  You should also re-boot if you change your sound card's 
  1403.      hardware settings (I/O, IRQ, or DMA).
  1404.  
  1405.      To re-boot your computer, turn your system power off and on.
  1406.  
  1407.            @PauseX
  1408.            @EndDisplay
  1409.            @Exit
  1410.     @EndIf
  1411.    @EndIf //Quick Install and  Windows install confirmed
  1412.    
  1413.    @If (@Exists("@WinDir\\SYSTEM\\aria.drv"))  // delete current aria.drv set up 
  1414.       @Flag1 = 0
  1415.       @ChangeDir(@WinDir)
  1416.       
  1417.       @If(@BatStrExists("system.ini","[aria.drv]"))
  1418.      @ReplaceFileStr("system.ini","Wave=aria.drv","Wave=")
  1419.      @ReplaceFileStr("system.ini","MIDI=aria.drv","MIDI=") 
  1420.      @ReplaceFileStr("system.ini","AUX=aria.drv","AUX=")
  1421.      @DelFileBlk("system.ini","[aria.drv]","[")
  1422.       @EndIf
  1423.       @If(@BatStrExists("win.ini","[MixMaster]")) 
  1424.      @DelFileBlk("win.ini","[MixMaster]","[")
  1425.       @EndIf
  1426.       @If(@BatStrExists("progman.ini","AriaMul")) 
  1427.      @ReplaceFileStr("progman.ini","AriaMul","",1)   
  1428.      @Delete("AriaMul*.GRP")
  1429.       @EndIf  
  1430.    @EndIf
  1431.    @FlushOptions()  
  1432.    @SetOption(909)
  1433.    @ChangeDir(@AriaDir)
  1434.    @ChDir("WIN")
  1435. @Else   //  not setting up Aria in Windows
  1436.     @If (C [= @Group)
  1437.     @GoTo CUSTOM_MENU
  1438.     @EndIf
  1439.     @Display
  1440.               EXITING THE ARIA CONFIGURATION PROGRAM
  1441.  
  1442.       You have chosen not to set up the Aria sound card software in Windows.
  1443.       To set up Aria in Windows at a later time, type "config" from the ARIA
  1444.       directory on your hard drive.  From the main menu, select "Set up Aria
  1445.       Windows driver" and follow the screen instructions.
  1446.  
  1447.       You must re-boot your PC to initialize the Aria DOS environment 
  1448.       variables.  Re-boot by turning the computer power off and on.
  1449.     @PauseX
  1450.      @EndDisplay
  1451.      @EXIT
  1452. @EndIf // ***** Installing to Windows
  1453.  
  1454. Done:
  1455. @Finish
  1456.    @If (999 [= @Option)
  1457.       @Exit
  1458.    @ElseIf (909 [= @Option)
  1459.        @Write("..\\wincfg.tmp","wt","win=@WinDir\n")
  1460.        @Execute("@WinDir\\win setup.exe")
  1461.       @Move(2,3,"This program is unable to launch Windows.  Exit to DOS, and") 
  1462.       @MOve(3,3,"go to the directory where you have installed the Aria files.") 
  1463.       @Move(4,3,"From this directory type \"win setup\" to set up the Aria") 
  1464.       @Move(5,3,"Windows driver.")
  1465.         
  1466.       @Move(8,3,"If you are still unable to launch Windows, make sure that")
  1467.       @Move(9,3,"the Windows directory is in your PATH statement. From any") 
  1468.       @Move(10,3,"prompt type \"PATH,\" and look for the Windows directory (See") 
  1469.       @Move(11,3,"your DOS manual for more information concerning PATH).")  
  1470.        
  1471.       @MOve(13,3,"After confirming that the Windows directory is in your PATH,")
  1472.       @Move(14,3,"make sure that Windows is properly installed and operating") 
  1473.       @Move(15,3,"correctly by typing \"win\" from any prompt. Consult the Windows") 
  1474.       @Move(16,3,"manual if you are still having problems running Windows.")
  1475.       @Pause
  1476.       @EXIT
  1477.     @EndIf
  1478. @EndFinish
  1479.  
  1480.  
  1481.